// 统一响应格式的中间件  
const responseFormatter = (req, res, next) => {  
  // 创建一个包装函数来覆盖默认的res.json、res.send等方法  
  const originalJson = res.json;
  const originalSend = res.send;
  
  res.json = function (data) {  
    originalJson.call(this, {
      code: res.statusCode,  
      msg: res.statusMessage || 'success',
      data: data
    });
  };  
  
  res.send = function (data) {  
    if (typeof data === 'string') {  
      data = {  
        code: res.statusCode,  
        msg: data,  
        data: null  
      };  
    } else {  
      data = {  
        code: res.statusCode,  
        msg: res.statusMessage || 'success',  
        data: data  
      };  
    }  
    originalSend.call(this, JSON.stringify(data));  
  };
  
  // 继续处理下一个中间件或路由处理函数  
  next();  
};  

module.exports = responseFormatter